package com.xsy.carRental.service;

import com.xsy.carRental.dto.RentalAddDTO;
import com.xsy.carRental.dto.RentalPageQueryDTO;
import com.xsy.carRental.dto.RentalSearchQueryDTO;
import com.xsy.carRental.dto.RentalUpdateDTO;
import com.xsy.carRental.entity.Rental;
import com.xsy.carRental.result.PageResult;

public interface RentalService {

    /**
     * 创建订单
     *
     * @param rentalAddDTO
     */
    void add(RentalAddDTO rentalAddDTO);

    /**
     * 根据订单id查询订单详细信息
     *
     * @param rentalId
     * @return
     */
    Rental getRentalById(int rentalId);


    /**
     * 修改订单详细信息
     *
     * @param rentalUpdateDTO
     * @return
     */
    void update(RentalUpdateDTO rentalUpdateDTO);

    /**
     * 根据订单id删除订单
     *
     * @param rentalId
     */
    void delete(Integer rentalId);

    /**
     * 分页查询订单
     *
     * @param rentalPageQueryDTO
     * @return
     */
    PageResult pageQuery(RentalPageQueryDTO rentalPageQueryDTO);

    PageResult SearchQuery(RentalSearchQueryDTO searchQueryDTO);
}
